package com.yanggu.scala.chapater09.implicitFun

import scala.language.implicitConversions

//使用隐式转换函数动态地给MySQL添加delete功能
//隐式转换函数使用的不多, 使用场景较少
//一般而言使用隐式类代替
object ImplicitDemo02 {

  def main(args: Array[String]): Unit = {
    implicit def addDelete(mysql : MySQL) : DB = {
      new DB
    }

    val mySQL = new MySQL
    mySQL.insert()
    mySQL.delete()
    mySQL.update()
  }

}

class MySQL {

  def insert(): Unit = {
    println("insert")
  }

}

class DB {

  def delete(): Unit = {
    println("delete")
  }

  def update(): Unit = {
    println("update")
  }

}

class Dog {

}